# 打印表格title
print(f"+{'-' * 79}+")
print("|DEC\t|OCT\t|HEX\t|BIN\t|Symbol\t|" * 2)
print(f"+{'-' * 39}+", end='')
print(f"+{'-' * 38}+")

# 以4种数据进制输出值
code = 32
while True:
    # 控制循环结束
    if code > 127:
        break
    
    # 偶数在左边列，奇数在右边列
    if not code % 2:
        print("|{0:03}\t|{1:0>3}\t|{2}\t|{3:0>7}|{4}\t|".format(
            code,
            oct(code).lstrip('0o'),
            hex(code).lstrip('0x').upper(),
            bin(code).lstrip('0b'), 
            chr(code)),
            # 偶数不换行
            end=''
        )
    # ascii 127是删除键
    elif code == 127:
        # 也可以直接使用类型符来做进制转换
        print("|{0:03}\t|{0:03o}\t|{0:X}\t|{0:07b}|{1}\t|".format(code, ' '))
    else:
        print("|{0:03}\t|{1:0>3}\t|{2}\t|{3:0>7}|{4}\t|".format(
            code,
            oct(code).lstrip('0o'),
            hex(code).lstrip('0x').upper(),
            bin(code).lstrip('0b'), 
            chr(code))
        )
    
    # 计数，打印下一个字符
    code += 1

# 打印表格线底部
print(f"+{'-' * 79}+")